home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright 1993, 1994, Silicon Graphics, Inc.
- * All Rights Reserved.
- *
- * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
- * the contents of this file may not be disclosed to third parties, copied or
- * duplicated in any form, in whole or in part, without the prior written
- * permission of Silicon Graphics, Inc.
- *
- * RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
- * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
- * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
- * rights reserved under the Copyright Laws of the United States.
- */
- /* compile: cc -o crosshair crosshair.c -lX11_s -lsun */
-
- #include <X11/Xlib.h>
- #include <X11/Xatom.h>
- #include <stdio.h>
-
- main(argc, argv)
- int argc;
- char *argv[];
- {
- Display *display;
- Window root;
- Atom crosshair_prop, atom_type;
- int rc, format;
- unsigned long nitems, remaining;
- XID *value;
-
- display = XOpenDisplay(NULL);
- if(display == NULL) {
- fprintf(stderr, "crosshair: cannot open display %s\n",
- XDisplayName(NULL));
- exit(1);
- }
- crosshair_prop = XInternAtom(display, "_SGI_CROSSHAIR_CURSOR", True);
- if(crosshair_prop == None) {
- fprintf(stderr, "crosshair: could not intern _SGI_CROSSHAIR_CURSOR\n");
- exit(1);
- }
- root = DefaultRootWindow(display);
- rc = XGetWindowProperty(display, root, crosshair_prop, 0L, 1L, False,
- XA_CURSOR, &atom_type, &format, &nitems, &remaining,
- (unsigned char *) &value);
- if(rc != Success) {
- fprintf(stderr, "crosshair: XGetWindowProperty failed\n");
- exit(1);
- }
- XDefineCursor(display, root, value[0]);
- XCloseDisplay(display);
- }
-